@@ -24,7 +24,7 @@ class AdminPanelController < ApplicationController |
||
24 | 24 |
end |
25 | 25 |
|
26 | 26 |
def users |
27 |
- @users = User.all |
|
27 |
+ @users = User.order('created_at DESC').all |
|
28 | 28 |
end |
29 | 29 |
|
30 | 30 |
def files |
@@ -48,6 +48,26 @@ class AdminPanelController < ApplicationController |
||
48 | 48 |
end |
49 | 49 |
end |
50 | 50 |
|
51 |
+ def make_admin |
|
52 |
+ @user = User.find(params[:id]) |
|
53 |
+ if @user.admin == true |
|
54 |
+ @user.admin = false |
|
55 |
+ status = "admin_panel.unmake_admin_success" |
|
56 |
+ else |
|
57 |
+ @user.admin = true |
|
58 |
+ status = "admin_panel.make_admin_success" |
|
59 |
+ end |
|
60 |
+ respond_to do |format| |
|
61 |
+ if @user.save |
|
62 |
+ format.html { redirect_to admin_users_path, notice: (t status) } |
|
63 |
+ format.json { head :no_content } |
|
64 |
+ else |
|
65 |
+ format.html { redirect_to admin_users_path, alert: (t 'admin_panel.make_admin_error') } |
|
66 |
+ format.json { head :no_content } |
|
67 |
+ end |
|
68 |
+ end |
|
69 |
+ end |
|
70 |
+ |
|
51 | 71 |
private |
52 | 72 |
|
53 | 73 |
# Never trust parameters from the scary internet, only allow the white list through. |
@@ -34,6 +34,13 @@ |
||
34 | 34 |
<span>Admin</span></span> |
35 | 35 |
</div> |
36 | 36 |
<% end %> |
37 |
+ <div class="pull-right"> |
|
38 |
+ <% if !user.admin %> |
|
39 |
+ <%= link_to (t 'admin_panel.make_admin'), make_admin_path(user.id), class: 'btn btn-mini', style: 'width: 100px; margin-top: 6px; line-height: 17px;' %> |
|
40 |
+ <% else %> |
|
41 |
+ <%= link_to (t 'admin_panel.unmake_admin'), make_admin_path(user.id), class: 'btn btn-mini btn-danger', style: 'width: 100px; margin-top: 6px; line-height: 17px;' %> |
|
42 |
+ <% end %> |
|
43 |
+ </div> |
|
37 | 44 |
</div> |
38 | 45 |
<% end %> |
39 | 46 |
</div> |
@@ -228,6 +228,11 @@ en: |
||
228 | 228 |
maintenance_message: Maintenance Page Message |
229 | 229 |
on_switch: Disable |
230 | 230 |
off_switch: Enable |
231 |
+ make_admin: Grant admin access |
|
232 |
+ unmake_admin: Take away admin access |
|
233 |
+ make_admin_success: The user was grated admin access. |
|
234 |
+ unmake_admin_success: The user lost his admin access. |
|
235 |
+ make_admin_error: User permission was not altered. |
|
231 | 236 |
nav: |
232 | 237 |
admin_panel: Admin Panel |
233 | 238 |
account: Account |
@@ -230,6 +230,11 @@ pt-BR: |
||
230 | 230 |
maintenance_message: Mensagem de manutenção |
231 | 231 |
on_switch: Ligado |
232 | 232 |
off_switch: Desligado |
233 |
+ make_admin: Conceder acesso de administrador |
|
234 |
+ unmake_admin: Tirar acesso de administrador |
|
235 |
+ make_admin_success: O usuário agora tem acesso de administrador. |
|
236 |
+ unmake_admin_success: O usuário não tem mais acesso de administrador. |
|
237 |
+ make_admin_error: A permissão não foi alterada. |
|
233 | 238 |
nav: |
234 | 239 |
admin_panel: Painel de Controle |
235 | 240 |
account: Conta |
@@ -13,6 +13,7 @@ RailsWebsiteTemplate::Application.routes.draw do |
||
13 | 13 |
get "contact_message/:id/mark_contact_message_as_readed" => "contact_messages#readed", :as => :mark_contact_message_as_readed |
14 | 14 |
get "contact_message/:id/mark_contact_message_as_unread" => "contact_messages#unread", :as => :mark_contact_message_as_unread |
15 | 15 |
get "admin/users" => "admin_panel#users", :as => :admin_users |
16 |
+ get "admin/users/:id/make_admin" => "admin_panel#make_admin", :as => :make_admin |
|
16 | 17 |
get "admin/config" => "admin_panel#site_config", :as => :admin_config |
17 | 18 |
post "admin/config/update" => "admin_panel#site_config_update", :as => :config_update |
18 | 19 |
|
@@ -28,7 +28,6 @@ Other features are still under development: |
||
28 | 28 |
## Todo's |
29 | 29 |
|
30 | 30 |
* edit account layout |
31 |
-* make admin button |
|
32 | 31 |
|
33 | 32 |
* Install instructions |
34 | 33 |
* Heroku Deploy button |